/**
 * 
 */
package mm.back.filtros;

import java.io.Serializable;

import org.hibernate.Query;

/**
 * @author PUSDERKIS
 *
 */
public class ReparacionesFiltro implements HibernateHQLFilter, Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 2737963706054960647L;

	private Long idReparacion;
	
	private Long idVendedor;
	
	/**
	 * @see mm.back.filtros.HibernateHQLFilter#getWhereClause(java.lang.String[])
	 */
	public String getWhereClause(String... alias) {
		StringBuffer sb = new StringBuffer();
		
		if (idReparacion != null && idReparacion != 0){
			sb.append(" AND ").append(alias[0]).append(".id = :idRep");
		}
		
		if (idVendedor != null && idVendedor != 0){
			sb.append(" AND ").append(alias[1]).append(".id = :idVen");
		}
		
		return sb.toString();
	}

	/**
	 * @see mm.back.filtros.HibernateHQLFilter#setWhereParameters(org.hibernate.Query)
	 */
	public void setWhereParameters(Query query) {
		if (idReparacion != null && idReparacion != 0){
			query.setLong("idRep", idReparacion);
		}
		
		if (idVendedor != null && idVendedor != 0){
			query.setLong("idVen", idVendedor);
		}
	}

	/**
	 * @return the idReparacion
	 */
	public Long getIdReparacion() {
		return idReparacion;
	}

	/**
	 * @param idReparacion the idReparacion to set
	 */
	public void setIdReparacion(Long idReparacion) {
		this.idReparacion = idReparacion;
	}

	/**
	 * @return the idVendedor
	 */
	public Long getIdVendedor() {
		return idVendedor;
	}

	/**
	 * @param idVendedor the idVendedor to set
	 */
	public void setIdVendedor(Long idVendedor) {
		this.idVendedor = idVendedor;
	}

	/**
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append("ReparacionesFiltro [idReparacion=");
		builder.append(idReparacion);
		builder.append(", idVendedor=");
		builder.append(idVendedor);
		builder.append("]");
		return builder.toString();
	}

}
